﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 料品MRP相关信息数据传输对象 Copy DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class CopyOfItemMRPInfoDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public CopyOfItemMRPInfoDTOData()
		{
			initData();
		}
		private void initData()
		{
		
		
		
		
		
					SysVersion= 0; 
							MRPPlanningType= 0; 
							ForecastContorlType= 2; 
							IsTraceRequirement=false; 
					RearrangeTimeFence= 0; 
							OverRunRatio=0m; 
					IsReduceMPS=false; 
					PlanningTimeFence= 0; 
							PlanningTimeFenceDays=0m; 
					DemandTimeFenceRuleType= 0; 
							DemandTimeFence= 0; 
							DemandTimeFenceDays=0m; 
					ReleaseTimeFence= 0; 
							ReleaseTimeFenceDays= 0; 
				
					PlanningTimeFenceRuleType= 0; 
							PurForwardProcessLT=0m; 
					PurProcessLT=0m; 
					PurBackwardProcessLT=0m; 
					FirmPlannedMOTimeFence= 0; 
							FixedLT=0m; 
					VarietyLT=0m; 
					SumManufactureLT=0m; 
					SumLT=0m; 
					LTBatch=0m; 
					SaleForwardProcessLT=0m; 
					SaleProcessLT=0m; 
					SaleBackwardProcessLT=0m; 

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        	        	        	        	        	        	        	        	        	        	        	        	        	        	        	        	        	        	        	        			if (this.Planer != null) 
			{
				this.Planer.DoSerializeKeyList(dict);
			}
	        	        	        	        	        	        	        	        	        	        	        	        	        
		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public CopyOfItemMRPInfoDTOData(  System.Int64 iD  , System.DateTime createdOn  , System.String createdBy  , System.DateTime modifiedOn  , System.String modifiedBy  , System.Int64 sysVersion  , System.Int32 mRPPlanningType  , System.Int32 forecastContorlType  , System.Boolean isTraceRequirement  , System.Int32 rearrangeTimeFence  , System.Decimal overRunRatio  , System.Boolean isReduceMPS  , System.Int32 planningTimeFence  , System.Decimal planningTimeFenceDays  , System.Int32 demandTimeFenceRuleType  , System.Int32 demandTimeFence  , System.Decimal demandTimeFenceDays  , System.Int32 releaseTimeFence  , System.Int32 releaseTimeFenceDays  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData planer  , System.Int32 planningTimeFenceRuleType  , System.Decimal purForwardProcessLT  , System.Decimal purProcessLT  , System.Decimal purBackwardProcessLT  , System.Int32 firmPlannedMOTimeFence  , System.Decimal fixedLT  , System.Decimal varietyLT  , System.Decimal sumManufactureLT  , System.Decimal sumLT  , System.Decimal lTBatch  , System.Decimal saleForwardProcessLT  , System.Decimal saleProcessLT  , System.Decimal saleBackwardProcessLT  )
		{
			initData();
			this.ID = iD;
			this.CreatedOn = createdOn;
			this.CreatedBy = createdBy;
			this.ModifiedOn = modifiedOn;
			this.ModifiedBy = modifiedBy;
			this.SysVersion = sysVersion;
			this.MRPPlanningType = mRPPlanningType;
			this.ForecastContorlType = forecastContorlType;
			this.IsTraceRequirement = isTraceRequirement;
			this.RearrangeTimeFence = rearrangeTimeFence;
			this.OverRunRatio = overRunRatio;
			this.IsReduceMPS = isReduceMPS;
			this.PlanningTimeFence = planningTimeFence;
			this.PlanningTimeFenceDays = planningTimeFenceDays;
			this.DemandTimeFenceRuleType = demandTimeFenceRuleType;
			this.DemandTimeFence = demandTimeFence;
			this.DemandTimeFenceDays = demandTimeFenceDays;
			this.ReleaseTimeFence = releaseTimeFence;
			this.ReleaseTimeFenceDays = releaseTimeFenceDays;
			this.Planer = planer;
			this.PlanningTimeFenceRuleType = planningTimeFenceRuleType;
			this.PurForwardProcessLT = purForwardProcessLT;
			this.PurProcessLT = purProcessLT;
			this.PurBackwardProcessLT = purBackwardProcessLT;
			this.FirmPlannedMOTimeFence = firmPlannedMOTimeFence;
			this.FixedLT = fixedLT;
			this.VarietyLT = varietyLT;
			this.SumManufactureLT = sumManufactureLT;
			this.SumLT = sumLT;
			this.LTBatch = lTBatch;
			this.SaleForwardProcessLT = saleForwardProcessLT;
			this.SaleProcessLT = saleProcessLT;
			this.SaleBackwardProcessLT = saleBackwardProcessLT;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// ID
		/// 料品MRP相关信息数据传输对象 Copy.Key.ID
		/// </summary>
		private System.Int64 m_iD ;
		[DataMember(IsRequired=false)]
		public System.Int64 ID
		{
			get	
			{	
				return m_iD ;
			}
			set	
			{	
				m_iD = value ;	
			}
		}
			
		

		/// <summary>
		/// 创建时间
		/// 料品MRP相关信息数据传输对象 Copy.Sys.创建时间
		/// </summary>
		private System.DateTime m_createdOn ;
		[DataMember(IsRequired=false)]
		public System.DateTime CreatedOn
		{
			get	
			{	
				return m_createdOn ;
			}
			set	
			{	
				m_createdOn = value ;	
			}
		}
			
		

		/// <summary>
		/// 创建人
		/// 料品MRP相关信息数据传输对象 Copy.Sys.创建人
		/// </summary>
		private System.String m_createdBy ;
		[DataMember(IsRequired=false)]
		public System.String CreatedBy
		{
			get	
			{	
				return m_createdBy ;
			}
			set	
			{	
				m_createdBy = value ;	
			}
		}
			
		

		/// <summary>
		/// 修改时间
		/// 料品MRP相关信息数据传输对象 Copy.Sys.修改时间
		/// </summary>
		private System.DateTime m_modifiedOn ;
		[DataMember(IsRequired=false)]
		public System.DateTime ModifiedOn
		{
			get	
			{	
				return m_modifiedOn ;
			}
			set	
			{	
				m_modifiedOn = value ;	
			}
		}
			
		

		/// <summary>
		/// 修改人
		/// 料品MRP相关信息数据传输对象 Copy.Sys.修改人
		/// </summary>
		private System.String m_modifiedBy ;
		[DataMember(IsRequired=false)]
		public System.String ModifiedBy
		{
			get	
			{	
				return m_modifiedBy ;
			}
			set	
			{	
				m_modifiedBy = value ;	
			}
		}
			
		

		/// <summary>
		/// 事务版本
		/// 料品MRP相关信息数据传输对象 Copy.Sys.事务版本
		/// </summary>
		private System.Int64 m_sysVersion ;
		[DataMember(IsRequired=false)]
		public System.Int64 SysVersion
		{
			get	
			{	
				return m_sysVersion ;
			}
			set	
			{	
				m_sysVersion = value ;	
			}
		}
			
		

		/// <summary>
		/// 计划方法
		/// 料品MRP相关信息数据传输对象 Copy.MRP方法.计划方法
		/// </summary>
		private System.Int32 m_mRPPlanningType ;
		[DataMember(IsRequired=false)]
		public System.Int32 MRPPlanningType
		{
			get	
			{	
				return m_mRPPlanningType ;
			}
			set	
			{	
				m_mRPPlanningType = value ;	
			}
		}
			
		

		/// <summary>
		/// 预测控制
		/// 料品MRP相关信息数据传输对象 Copy.MRP方法.预测控制
		/// </summary>
		private System.Int32 m_forecastContorlType ;
		[DataMember(IsRequired=false)]
		public System.Int32 ForecastContorlType
		{
			get	
			{	
				return m_forecastContorlType ;
			}
			set	
			{	
				m_forecastContorlType = value ;	
			}
		}
			
		

		/// <summary>
		/// 需求追溯
		/// 料品MRP相关信息数据传输对象 Copy.MRP方法.需求追溯
		/// </summary>
		private System.Boolean m_isTraceRequirement ;
		[DataMember(IsRequired=false)]
		public System.Boolean IsTraceRequirement
		{
			get	
			{	
				return m_isTraceRequirement ;
			}
			set	
			{	
				m_isTraceRequirement = value ;	
			}
		}
			
		

		/// <summary>
		/// 重排时界
		/// 料品MRP相关信息数据传输对象 Copy.MRP方法.重排时界
		/// </summary>
		private System.Int32 m_rearrangeTimeFence ;
		[DataMember(IsRequired=false)]
		public System.Int32 RearrangeTimeFence
		{
			get	
			{	
				return m_rearrangeTimeFence ;
			}
			set	
			{	
				m_rearrangeTimeFence = value ;	
			}
		}
			
		

		/// <summary>
		/// 超量百分比
		/// 料品MRP相关信息数据传输对象 Copy.MRP方法.超量百分比
		/// </summary>
		private System.Decimal m_overRunRatio ;
		[DataMember(IsRequired=false)]
		public System.Decimal OverRunRatio
		{
			get	
			{	
				return m_overRunRatio ;
			}
			set	
			{	
				m_overRunRatio = value ;	
			}
		}
			
		

		/// <summary>
		/// 减少MPS
		/// 料品MRP相关信息数据传输对象 Copy.MRP方法.减少MPS
		/// </summary>
		private System.Boolean m_isReduceMPS ;
		[DataMember(IsRequired=false)]
		public System.Boolean IsReduceMPS
		{
			get	
			{	
				return m_isReduceMPS ;
			}
			set	
			{	
				m_isReduceMPS = value ;	
			}
		}
			
		

		/// <summary>
		/// 计划时界类型
		/// 料品MRP相关信息数据传输对象 Copy.计划时界.计划时界类型
		/// </summary>
		private System.Int32 m_planningTimeFence ;
		[DataMember(IsRequired=false)]
		public System.Int32 PlanningTimeFence
		{
			get	
			{	
				return m_planningTimeFence ;
			}
			set	
			{	
				m_planningTimeFence = value ;	
			}
		}
			
		

		/// <summary>
		/// 计划时界天数
		/// 料品MRP相关信息数据传输对象 Copy.计划时界.计划时界天数
		/// </summary>
		private System.Decimal m_planningTimeFenceDays ;
		[DataMember(IsRequired=false)]
		public System.Decimal PlanningTimeFenceDays
		{
			get	
			{	
				return m_planningTimeFenceDays ;
			}
			set	
			{	
				m_planningTimeFenceDays = value ;	
			}
		}
			
		

		/// <summary>
		/// 需求时界原则
		/// 料品MRP相关信息数据传输对象 Copy.需求时界.需求时界原则
		/// </summary>
		private System.Int32 m_demandTimeFenceRuleType ;
		[DataMember(IsRequired=false)]
		public System.Int32 DemandTimeFenceRuleType
		{
			get	
			{	
				return m_demandTimeFenceRuleType ;
			}
			set	
			{	
				m_demandTimeFenceRuleType = value ;	
			}
		}
			
		

		/// <summary>
		/// 需求时界类型
		/// 料品MRP相关信息数据传输对象 Copy.需求时界.需求时界类型
		/// </summary>
		private System.Int32 m_demandTimeFence ;
		[DataMember(IsRequired=false)]
		public System.Int32 DemandTimeFence
		{
			get	
			{	
				return m_demandTimeFence ;
			}
			set	
			{	
				m_demandTimeFence = value ;	
			}
		}
			
		

		/// <summary>
		/// 需求时界天数
		/// 料品MRP相关信息数据传输对象 Copy.需求时界.需求时界天数
		/// </summary>
		private System.Decimal m_demandTimeFenceDays ;
		[DataMember(IsRequired=false)]
		public System.Decimal DemandTimeFenceDays
		{
			get	
			{	
				return m_demandTimeFenceDays ;
			}
			set	
			{	
				m_demandTimeFenceDays = value ;	
			}
		}
			
		

		/// <summary>
		/// 发放时界类型
		/// 料品MRP相关信息数据传输对象 Copy.发放时界.发放时界类型
		/// </summary>
		private System.Int32 m_releaseTimeFence ;
		[DataMember(IsRequired=false)]
		public System.Int32 ReleaseTimeFence
		{
			get	
			{	
				return m_releaseTimeFence ;
			}
			set	
			{	
				m_releaseTimeFence = value ;	
			}
		}
			
		

		/// <summary>
		/// 发放时界天数
		/// 料品MRP相关信息数据传输对象 Copy.发放时界.发放时界天数
		/// </summary>
		private System.Int32 m_releaseTimeFenceDays ;
		[DataMember(IsRequired=false)]
		public System.Int32 ReleaseTimeFenceDays
		{
			get	
			{	
				return m_releaseTimeFenceDays ;
			}
			set	
			{	
				m_releaseTimeFenceDays = value ;	
			}
		}
			
		

		/// <summary>
		/// 默认计划员
		/// 料品MRP相关信息数据传输对象 Copy.发放时界.默认计划员
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_planer ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Planer
		{
			get	
			{	
				return m_planer ;
			}
			set	
			{	
				m_planer = value ;	
			}
		}
			
		

		/// <summary>
		/// 计划时界原则
		/// 料品MRP相关信息数据传输对象 Copy.计划时界.计划时界原则
		/// </summary>
		private System.Int32 m_planningTimeFenceRuleType ;
		[DataMember(IsRequired=false)]
		public System.Int32 PlanningTimeFenceRuleType
		{
			get	
			{	
				return m_planningTimeFenceRuleType ;
			}
			set	
			{	
				m_planningTimeFenceRuleType = value ;	
			}
		}
			
		

		/// <summary>
		/// 采购预提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.采购预提前期(天)
		/// </summary>
		private System.Decimal m_purForwardProcessLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal PurForwardProcessLT
		{
			get	
			{	
				return m_purForwardProcessLT ;
			}
			set	
			{	
				m_purForwardProcessLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 采购处理提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.采购处理提前期(天)
		/// </summary>
		private System.Decimal m_purProcessLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal PurProcessLT
		{
			get	
			{	
				return m_purProcessLT ;
			}
			set	
			{	
				m_purProcessLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 采购后提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.采购后提前期(天)
		/// </summary>
		private System.Decimal m_purBackwardProcessLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal PurBackwardProcessLT
		{
			get	
			{	
				return m_purBackwardProcessLT ;
			}
			set	
			{	
				m_purBackwardProcessLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 计划订单天数
		/// 料品MRP相关信息数据传输对象 Copy.发放时界.计划订单天数
		/// </summary>
		private System.Int32 m_firmPlannedMOTimeFence ;
		[DataMember(IsRequired=false)]
		public System.Int32 FirmPlannedMOTimeFence
		{
			get	
			{	
				return m_firmPlannedMOTimeFence ;
			}
			set	
			{	
				m_firmPlannedMOTimeFence = value ;	
			}
		}
			
		

		/// <summary>
		/// 固定提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.固定提前期(天)
		/// </summary>
		private System.Decimal m_fixedLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal FixedLT
		{
			get	
			{	
				return m_fixedLT ;
			}
			set	
			{	
				m_fixedLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 变动提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.变动提前期(天)
		/// </summary>
		private System.Decimal m_varietyLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal VarietyLT
		{
			get	
			{	
				return m_varietyLT ;
			}
			set	
			{	
				m_varietyLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 制造提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.制造提前期(天)
		/// </summary>
		private System.Decimal m_sumManufactureLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal SumManufactureLT
		{
			get	
			{	
				return m_sumManufactureLT ;
			}
			set	
			{	
				m_sumManufactureLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 汇总提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.汇总提前期(天)
		/// </summary>
		private System.Decimal m_sumLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal SumLT
		{
			get	
			{	
				return m_sumLT ;
			}
			set	
			{	
				m_sumLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 提前期批量
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.提前期批量
		/// </summary>
		private System.Decimal m_lTBatch ;
		[DataMember(IsRequired=false)]
		public System.Decimal LTBatch
		{
			get	
			{	
				return m_lTBatch ;
			}
			set	
			{	
				m_lTBatch = value ;	
			}
		}
			
		

		/// <summary>
		/// 销售预提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.销售预提前期(天)
		/// </summary>
		private System.Decimal m_saleForwardProcessLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal SaleForwardProcessLT
		{
			get	
			{	
				return m_saleForwardProcessLT ;
			}
			set	
			{	
				m_saleForwardProcessLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 销售处理提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.销售处理提前期(天)
		/// </summary>
		private System.Decimal m_saleProcessLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal SaleProcessLT
		{
			get	
			{	
				return m_saleProcessLT ;
			}
			set	
			{	
				m_saleProcessLT = value ;	
			}
		}
			
		

		/// <summary>
		/// 销售后提前期(天)
		/// 料品MRP相关信息数据传输对象 Copy.前置时间.销售后提前期(天)
		/// </summary>
		private System.Decimal m_saleBackwardProcessLT ;
		[DataMember(IsRequired=false)]
		public System.Decimal SaleBackwardProcessLT
		{
			get	
			{	
				return m_saleBackwardProcessLT ;
			}
			set	
			{	
				m_saleBackwardProcessLT = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																																																		
		#endregion 
	} 	
}
